perm filename SDIO.LAP[BNF,JRA]1 blob
sn#028957 filedate 1973-03-14 generic text, type T, neo UTF8
(SETQ IBASE (ADD1 7))
(DEFPROP SDIO (NIL SDIOSET SDIOINIT IN OUT CH QCH UNCH SPWD *NIL* $PDLSIZE TOP STK0 STK1 STK2 STK3 STK4 STK5 OUT~
PDL OUTBKU START FUNFLAT DOPRINT FPRINT FSIZE SPACING SPACES OTST OUTTST <ATOM> <ID> <NUMBER> <CHAR> <UNARY_OP> ~
FCALL >ATOM< >ID< RESERVEDWORDS >NUMBER< >CHAR<) VALUE)
(LAP SDIOSET SUBR)
(CLEARM 1 (SPECIAL SCNVAL))
(MOVEI 2 (QUOTE VALUE))
(MOVEI 1 (QUOTE SCNVAL))
(CALL 2 (E GET))
(EXCH 2 1)
(MOVEI 1 (QUOTE SCNVAL))
(CALL 2 (E *PUTSYM))
(MOVEI 1 (QUOTE ((TRUTH (QUOTE T)) (NILX (QUOTE *NIL*)) (STAR (QUOTE *)))))
(CALL 17 (E PUTSYM))
(MOVEI 1 (QUOTE NIL))
(POPJ P)
NIL
(LAP SDIOINIT SUBR)
(MOVEI 1 (QUOTE (N I L)))
(CALL 1 (E MAKNAM))
(MOVEM 1 (SPECIAL %%NIL))
(MOVEI 1 (QUOTE (SUBR ATM %TRY SCANINIT LETTER IGNORE SCAN SCANSET SCANRESET CHX SPWDX REDUCE STK PPOS P~
DLSET LOC FLATC NLRR LRR OUTRUL MATCH)))
(CALL 17 (E GETSYM))
(MOVEI 5 (QUOTE 45))
(MOVEI 4 (QUOTE 42))
(MOVEI 3 (QUOTE 42))
(MOVEI 2 (QUOTE 12))
(MOVEI 1 (QUOTE 176))
(CALL 5 (E SCANINIT))
(MOVEI 1 (QUOTE 12))
(CALL 1 (E IGNORE))
(MOVEI 1 (QUOTE 175))
(CALL 1 (E IGNORE))
(MOVEI 1 (QUOTE 11))
(CALL 1 (E IGNORE))
(MOVEI 1 (QUOTE 15))
(CALL 1 (E IGNORE))
(MOVEI 1 (QUOTE 40))
(CALL 1 (E IGNORE))
(MOVEI 1 (QUOTE 30))
(CALL 1 (E LETTER))
(MOVEI 1 (QUOTE 105))
(MOVEM 1 (SPECIAL MAXLNG))
(MOVEI 1 (QUOTE 0))
(CALL 1 (E ASCII))
(CALL 1 (E INTERN))
(CALL 1 (E NCONS))
(MOVEI 2 (QUOTE :CH))
(CALL 2 (E XCONS))
(MOVEM 1 (SPECIAL FOOBAZ))
(MOVEI 1 (QUOTE (>ATOM< ((>ATOM< . 1)) SPACING)))
(CALL 17 (E DEFPROP))
(MOVEI 1 (QUOTE SCANRESET))
(CALL 1 (E INITFN))
(MOVEI 1 (QUOTE NIL))
(POPJ P)
NIL
(LAP IN FSUBR)
(PUSH P 1)
(CALL 0 (E SCANSET))
(CALL 0 (E START))
(MOVE 1 0 P)
(CALL 1 (E *EVAL))
(PUSH P 1)
(CALL 0 (E SCANRESET))
(MOVE 1 0 P)
(JUMPE 1 TAG5)
(CALL 0 (E TOP))
(JRST 0 TAG4)
TAG5 (MOVE 1 (SPECIAL *NIL*))
TAG4 (SUB P (C 0 0 2 2))
(POPJ P)
NIL
(LAP OUT FSUBR)
(PUSH P 1)
(CALL 1 (E CADR))
(CALL 1 (E *EVAL))
(HLRZ@ 2 0 P)
(CALL 2 (E OUTTST))
(CALL 1 (E NCONS))
(CALL 1 (E NCONS))
(CALL 1 (E FUNFLAT))
(MOVEM 1 (SPECIAL &&Z))
(MOVE 1 (SPECIAL MAXLNG))
(CALL 1 (E OTST))
(MOVEI 1 (QUOTE NIL))
(SUB P (C 0 0 1 1))
(POPJ P)
NIL
(LAP UNCH SUBR)
(MOVEI 2 (QUOTE PNAME))
(CALL 2 (E GET))
(MOVEI 2 (QUOTE FIXNUM))
(CALL 1 (E CAAR))
(CALL 2 (E MAKNUM))
(MOVEI 2 (QUOTE -13))
(JCALL 2 (E LSH))
NIL
(DEFPROP *NIL* (NIL . *NIL*) VALUE)
(DEFPROP $PDLSIZE (NIL . 1000) VALUE)
(LAP TOP SUBR)
(MOVEI 1 (QUOTE 4))
(JCALL 1 (E PDL))
NIL
(LAP STK0 SUBR)
(MOVEI 1 (QUOTE 0))
(JCALL 1 (E STK))
NIL
(LAP STK1 SUBR)
(MOVEI 1 (QUOTE 1))
(JCALL 1 (E STK))
NIL
(LAP STK2 SUBR)
(MOVEI 1 (QUOTE 2))
(JCALL 1 (E STK))
NIL
(LAP STK3 SUBR)
(MOVEI 1 (QUOTE 3))
(JCALL 1 (E STK))
NIL
(LAP STK4 SUBR)
(MOVEI 1 (QUOTE 4))
(JCALL 1 (E STK))
NIL
(LAP STK5 SUBR)
(MOVEI 1 (QUOTE 5))
(JCALL 1 (E STK))
NIL
(LAP OUTPDL SUBR)
(PUSH P 1)
TAG1 (MOVE 1 0 P)
(CALL 1 (E MINUSP))
(JUMPE 1 TAG6)
(MOVEI 1 (QUOTE BOTTOM))
(JRST 0 TAG2)
TAG6 (MOVE 2 0 P)
(MOVE 1 2)
(CALL 2 (E *PLUS))
(MOVEI 2 (QUOTE 1))
(CALL 2 (E *PLUS))
(CALL 1 (E PDL))
(MOVE 2 0 P)
(PUSH P 1)
(MOVE 1 2)
(CALL 2 (E *PLUS))
(CALL 1 (E PDL))
(POP P 2)
(CALL 2 (E XCONS))
(CALL 1 (E PRINT))
(MOVE 1 0 P)
(CALL 1 (E SUB1))
(MOVEM 1 0 P)
(JRST 0 TAG1)
TAG2 (SUB P (C 0 0 1 1))
(POPJ P)
NIL
(LAP OUTBKU SUBR)
(PUSH P 1)
TAG1 (MOVE 1 0 P)
(CAIE 1 (QUOTE 0))
(JRST 0 TAG6)
(MOVEI 1 (QUOTE BOTTOM))
(JRST 0 TAG2)
TAG6 (MOVE 2 0 P)
(MOVE 1 2)
(CALL 2 (E *PLUS))
(MOVEI 2 (QUOTE 1))
(CALL 2 (E *PLUS))
(CALL 1 (E BACKUP))
(MOVE 2 0 P)
(PUSH P 1)
(MOVE 1 2)
(CALL 2 (E *PLUS))
(CALL 1 (E BACKUP))
(POP P 2)
(CALL 2 (E XCONS))
(CALL 1 (E PRINT))
(MOVE 1 0 P)
(CALL 1 (E SUB1))
(MOVEM 1 0 P)
(JRST 0 TAG1)
TAG2 (SUB P (C 0 0 1 1))
(POPJ P)
NIL
(LAP START SUBR)
(MOVEI 2 (QUOTE SUBR))
(MOVEI 1 (QUOTE PDL))
(CALL 2 (E GET))
(JUMPN 1 TAG4)
(MOVEI 1 (QUOTE (BACKUP T $PDLSIZE)))
(CALL 17 (E ARRAY))
(MOVEI 1 (QUOTE (PDL T $PDLSIZE)))
(CALL 17 (E ARRAY))
TAG5
TAG4 (MOVEI 2 (QUOTE SUBR))
(MOVEI 1 (QUOTE PDL))
(CALL 2 (E GET))
(PUSH P 1)
(MOVEI 1 (QUOTE BACKUP))
(CALL 2 (E GET))
(MOVEI 2 (QUOTE 2))
(PUSH P 1)
(MOVE 1 (SPECIAL $PDLSIZE))
(CALL 2 (E *QUO))
(MOVE 3 1)
(POP P 2)
(POP P 1)
(CALL 3 (E PDLSET))
(MOVEI 1 (QUOTE NIL))
(POPJ P)
NIL
(LAP FUNFLAT SUBR)
(PUSH P 1)
(PUSH P (C 0 0 (QUOTE 0) 0))
(MOVEI 2 (QUOTE NIL))
(CALL 2 (E XCONS))
(PUSH P 1)
(PUSH P 1)
(PUSH P (C 0 0 (QUOTE NIL) 0))
(PUSH P (C 0 0 (QUOTE NIL) 0))
TAG1 (HRRZ@ 1 -2 P)
(MOVEM 1 -5 P)
(JUMPN 1 TAG6)
(MOVE 1 -4 P)
(HRLM@ 1 -3 P)
(MOVE 1 -3 P)
(JRST 0 TAG2)
TAG6 (HLRZ@ 1 1)
(MOVEM 1 0 P)
(CAIE 1 (QUOTE %DOWN))
(JRST 0 TAG7)
(HRRZ@ 1 -5 P)
(MOVEM 1 -5 P)
(HRRM@ 1 -2 P)
(HLRZ@ 1 1)
(MOVEM 1 0 P)
(CALL 1 (E ATOM))
(JUMPE 1 TAG11)
(MOVE 1 0 P)
(CALL 1 (E FSIZE))
(MOVEM 1 -1 P)
(JRST 0 TAG10)
TAG11 (HLRZ@ 1 0 P)
(CAIE 1 (QUOTE :CH))
(JRST 0 TAG12)
(HRRZ@ 2 0 P)
(HLRZ@ 2 2)
(MOVE 1 (SPECIAL LAST))
(CALL 2 (E SPACING))
(CALL 1 (E ADD1))
(MOVEM 1 -1 P)
(JRST 0 TAG10)
TAG12 (MOVE 1 0 P)
(CALL 1 (E FUNFLAT))
(HRLM@ 1 -5 P)
(HLRZ@ 1 -5 P)
(HLRZ@ 1 1)
(MOVEM 1 -1 P)
TAG13
TAG10 (JRST 0 TAG5)
TAG7 (CALL 1 (E ATOM))
(JUMPE 1 TAG15)
(MOVE 1 0 P)
(CALL 1 (E FSIZE))
(MOVEM 1 -1 P)
(JRST 0 TAG5)
TAG15 (HLRZ@ 1 0 P)
(CAIE 1 (QUOTE :CH))
(JRST 0 TAG16)
(HRRZ@ 2 0 P)
(HLRZ@ 2 2)
(MOVE 1 (SPECIAL LAST))
(CALL 2 (E SPACING))
(CALL 1 (E ADD1))
(MOVEM 1 -1 P)
(JRST 0 TAG5)
TAG16 (HLRZ@ 1 0 P)
(CAIE 1 (QUOTE %IN))
(JRST 0 TAG17)
(MOVEI 1 (QUOTE 0))
(MOVEM 1 -1 P)
(JRST 0 TAG5)
TAG17 (MOVE 1 0 P)
(HRRM@ 1 -2 P)
(CALL 1 (E LAST))
(HRRZ@ 2 -5 P)
(HRRM@ 2 1)
(JRST 0 TAG1)
TAG20
TAG5 (MOVE 2 -1 P)
(MOVE 1 -4 P)
(CALL 2 (E *PLUS))
(MOVEM 1 -4 P)
(HRRZ@ 1 -2 P)
(MOVEM 1 -2 P)
(JRST 0 TAG1)
TAG2 (SUB P (C 0 0 6 6))
(POPJ P)
NIL
(LAP DOPRINT SUBR)
(PUSH P 1)
(CALL 1 (E ATOM))
(JUMPE 1 TAG2)
(MOVEI 2 (QUOTE >ATOM<))
(MOVE 1 (SPECIAL LAST))
(CALL 2 (E SPACES))
(MOVE 1 0 P)
(CALL 1 (E PRIN1))
(JRST 0 TAG1)
TAG2 (HLRZ@ 1 0 P)
(CAIE 1 (QUOTE :CH))
(JRST 0 TAG3)
(HRRZ@ 2 0 P)
(HLRZ@ 2 2)
(MOVE 1 (SPECIAL LAST))
(CALL 2 (E SPACES))
(HRRZ@ 1 0 P)
(HLRZ@ 1 1)
(CALL 1 (E PRINC))
(JRST 0 TAG1)
TAG3 (HLRZ@ 1 0 P)
(CAIE 1 (QUOTE %IN))
(TDZA 1 1)
(MOVEI 1 (QUOTE T))
(JUMPN 1 TAG1)
(HRRZ@ 2 0 P)
(MOVEI 1 (QUOTE DOPRINT))
(CALL 2 (E MAPC))
TAG4
TAG1 (SUB P (C 0 0 1 1))
(POPJ P)
NIL
(LAP FPRINT SUBR)
(PUSH P 1)
(PUSH P 2)
(HLRZ@ 1 1)
(CALL 2 (E *PLUS))
(MOVE 2 (SPECIAL MAXLNG))
(CALL 2 (E *LESS))
(JUMPE 1 TAG3)
(MOVE 1 -1 P)
(CALL 1 (E DOPRINT))
(JRST 0 TAG2)
TAG3
TAG1 (HRRZ@ 1 -1 P)
(MOVEM 1 -1 P)
(JUMPE 1 TAG7)
(HLRZ@ 1 1)
(CALL 1 (E ATOM))
(JUMPE 1 TAG12)
(HLRZ@ 1 -1 P)
(CALL 1 (E DOPRINT))
(JRST 0 TAG11)
TAG12 (HLRZ@ 1 -1 P)
(HLRZ@ 1 1)
(CAIE 1 (QUOTE %IN))
(JRST 0 TAG13)
(HLRZ@ 1 -1 P)
(CALL 1 (E CADR))
(CALL 1 (E NUMBERP))
(JUMPE 1 TAG13)
(HLRZ@ 2 -1 P)
(HRRZ@ 2 2)
(HLRZ@ 2 2)
(MOVE 1 0 P)
(CALL 2 (E *PLUS))
(CALL 1 (E PPOS))
(MOVEI 1 (QUOTE >CR<))
(MOVEM 1 (SPECIAL LAST))
(JRST 0 TAG11)
TAG13 (HLRZ@ 1 -1 P)
(HLRZ@ 1 1)
(CAIE 1 (QUOTE :CH))
(JRST 0 TAG15)
(HLRZ@ 1 -1 P)
(CALL 1 (E DOPRINT))
(JRST 0 TAG11)
TAG15 (HLRZ@ 1 -1 P)
(PUSH P 1)
(CALL 0 (E LOC))
(MOVE 2 1)
(POP P 1)
(CALL 2 (E FPRINT))
TAG16
TAG11 (JRST 0 TAG1)
TAG7 (MOVEI 1 (QUOTE NIL))
TAG4
TAG2 (SUB P (C 0 0 2 2))
(POPJ P)
NIL
(LAP FSIZE SUBR)
(CALL 1 (E FLATSIZE))
(MOVEI 2 (QUOTE >ATOM<))
(PUSH P 1)
(MOVE 1 (SPECIAL LAST))
(CALL 2 (E SPACING))
(POP P 2)
(JCALL 2 (E *PLUS))
NIL
(LAP SUBFUN1SPACING SUBR)
(MOVEI 1 (QUOTE (NIL . 0)))
(POPJ P)
NIL
(LAP SPACING SUBR)
(PUSH P 1)
(MOVE 1 2)
(MOVEM 1 (SPECIAL LAST))
(PUSH P 2)
(MOVEI 2 (QUOTE SPACING))
(EXCH 1 -1 P)
(CALL 2 (E GET))
(MOVEI 3 (QUOTE SUBFUN1SPACING))
(EXCH 2 1)
(POP P 1)
(CALL 3 (E SASSOC))
(HRRZ@ 1 1)
(SUB P (C 0 0 1 1))
(POPJ P)
NIL
(LAP SPACES SUBR)
(PUSH P 1)
(PUSH P 2)
(CALL 2 (E SPACING))
(PUSH P 1)
TAG1 (MOVE 1 0 P)
(CAIN 1 (QUOTE 0))
(JRST 0 TAG3)
(MOVEI 1 (QUOTE 40))
(CALL 1 (E TYO))
(MOVE 1 0 P)
(CALL 1 (E SUB1))
(MOVEM 1 0 P)
(JRST 0 TAG1)
TAG3 (MOVEI 1 (QUOTE NIL))
(SUB P (C 0 0 3 3))
(POPJ P)
NIL
(LAP OTST SUBR)
(JSP 6 SPECBIND)
(0 1 (SPECIAL MAXLNG))
(CALL 0 (E TERPRI))
(CLEARM 1 (SPECIAL LAST))
(MOVEI 2 (QUOTE 0))
(MOVE 1 (SPECIAL &&Z))
(CALL 2 (E FPRINT))
(CALL 0 (E TERPRI))
(MOVEI 1 (QUOTE NIL))
(JRST 0 SPECSTR)
NIL
(LAP OUTTST SUBR)
(PUSH P 1)
(PUSH P 2)
(CALL 0 (E START))
(CLEARM 1 (SPECIAL LAST))
(MOVEI 1 (QUOTE 2))
(CALL 1 (E PDL))
(MOVE 1 -1 P)
(PUSHJ P NSTR)
(MOVEI 1 (QUOTE 0))
(CALLF@ 1 0 P)
(SUB P (C 0 0 2 2))
(POPJ P)
NIL
(LAP <ATOM> SUBR)
(CALL 0 (E SCANRESET))
(CALL 0 (E ATM))
(PUSH P 1)
(CALL 0 (E SCANSET))
(POP P 1)
(POPJ P)
NIL
(LAP <ID> SUBR)
(MOVEI 1 (QUOTE 0))
(JCALL 1 (E %TRY))
NIL
(LAP <NUMBER> SUBR)
(MOVEI 1 (QUOTE 2))
(JCALL 1 (E %TRY))
NIL
(LAP SUBFUN1<CHAR> SUBR)
(MOVEI 1 (QUOTE 3))
(CALL 1 (E %TRY))
(JUMPE 1 TAG2)
(MOVEI 1 (QUOTE 0))
(CALL 1 (E STK))
(CALL 1 (E ASCII))
(CALL 1 (E INTERN))
(JRST 0 TAG1)
TAG2 (MOVE 1 (SPECIAL *NIL*))
TAG1 (POPJ P)
NIL
(LAP <CHAR> SUBR)
(MOVEI 2 (QUOTE SUBFUN1<CHAR>))
(MOVEI 1 (QUOTE <CHAR>))
(JCALL 2 (E NLRR))
NIL
(LAP <UNARY_OP> SUBR)
(MOVEI 1 (QUOTE NIL))
(POPJ P)
NIL
(LAP SUBFUN1>ATOM< SUBR)
(CALL 0 (E STK1))
(JUMPN 1 TAG2)
(MOVE 1 (SPECIAL %%NIL))
(CALL 1 (E NCONS))
(JRST 0 TAG1)
TAG2 (CALL 0 (E STK1))
(CALL 1 (E ATOM))
(JUMPE 1 TAG3)
(CALL 0 (E STK1))
TAG3
TAG1 (POPJ P)
NIL
(LAP >ATOM< SUBR)
(MOVEI 2 (QUOTE SUBFUN1>ATOM<))
(JCALL 2 (E OUTRUL))
NIL
(LAP SUBFUN1>ID< SUBR)
(CALL 0 (E STK1))
(CALL 1 (E NUMBERP))
(JUMPE 1 TAG2)
(MOVEI 1 (QUOTE NIL))
(JRST 0 TAG1)
TAG2 (CALL 0 (E STK1))
(MOVE 2 (SPECIAL RESERVEDWORDS))
(CALL 2 (E MEMBER))
(JUMPE 1 TAG3)
(MOVEI 1 (QUOTE NIL))
(JRST 0 TAG1)
TAG3 (CALL 0 (E STK1))
(JUMPN 1 TAG4)
(CALL 1 (E NCONS))
(JRST 0 TAG1)
TAG4 (CALL 0 (E STK1))
(CALL 1 (E ATOM))
(JUMPE 1 TAG5)
(CALL 0 (E STK1))
TAG5
TAG1 (POPJ P)
NIL
(LAP >ID< SUBR)
(MOVEI 2 (QUOTE SUBFUN1>ID<))
(JCALL 2 (E OUTRUL))
NIL
(DEFPROP RESERVEDWORDS (NIL) VALUE)
(LAP SUBFUN1>NUMBER< SUBR)
(CALL 0 (E STK1))
(CALL 1 (E NUMBERP))
(JUMPE 1 TAG2)
(CALL 0 (E STK1))
TAG2 (POPJ P)
NIL
(LAP >NUMBER< SUBR)
(MOVEI 2 (QUOTE SUBFUN1>NUMBER<))
(JCALL 2 (E OUTRUL))
NIL
(LAP SUBFUN1>CHAR< SUBR)
(CALL 0 (E STK1))
(CALL 1 (E NCONS))
(MOVEI 2 (QUOTE :CH))
(JCALL 2 (E XCONS))
NIL
(LAP >CHAR< SUBR)
(MOVEI 2 (QUOTE SUBFUN1>CHAR<))
(JCALL 2 (E OUTRUL))
NIL
(SDIOSET)